import time
from multiprocessing import Pool, Process

# 定义全局变量 lst
lst = []


# 添加元素到 lst 中
def add_data():
    for i in range(6):
        lst.append(i)
        time.sleep(0.3)


# 读取全局变量 lst
def read_data():
    print(lst)


if __name__ == '__main__':

    # 三种方式

    p1 = Process(target=add_data)
    p2 = Process(target=read_data)
    p1.start()
    p1.join()
    p2.start()

    # 1.创建一个线程池
    # 2.一个线程添加数据
    # 3.另一个线程读取数据
    # 观察现象
    # p = Pool(2)
    # p1 = p.apply(add_data)
    # p2 = p.apply(read_data)


    # p1 = p.apply_async(add_data)
    # p2 = p.apply_async(read_data)
    # p.close()
    # p.join()